using System;
using System.Collections.Generic;
using BLL.Model.OperatingSystem;
using BLL.Utility;

namespace BLL.Interface.OperatingSystem
{
    public interface IOperatingSystemInfo
    {
        bool AddOperatingSystemInfo(OperatingSystemInfo operatingSystemInfo);

        bool AddOperatingSystemInfo(IList<OperatingSystemInfo> operatingSystemInfoList);

        bool UpdateOperatingSystemInfo(OperatingSystemInfo operatingSystemInfo);

        bool DeleteOperatingSystemInfoById(int id);

        bool DeleteOperatingSystemInfoById(IList<int> idList);

        bool DeleteAllOperatingSystemInfo();

        IList<OperatingSystemInfo> GetAllOperatingSystemInfo();

        OperatingSystemInfo FindOperatingSystemInfoById(int id, bool tracking = false);

        IList<OperatingSystemInfo> GetOperatingSystemInfoByFilter(Dictionary<string, string> condition, Tuple<string, string> sort, PageInfo page);
    }

}
